#ifndef SCENE_H
#define SCENE_H

#include <surface.h>
#include <object.h>

#include <linkedlist.h>


typedef struct scene
{
  linkedlist_t *objects;
} scene_t;

scene_t *
scene_new( void );

void
scene_free( scene_t *scene );

void
scene_free_objects( scene_t *scene );

void
scene_clear_objects( scene_t *scene );

void
scene_add_object( scene_t *scene, object_t *object );

void
scene_render( scene_t *scene, surface_t *surface );

#endif /* SCENE_H */
